using System;
using System.ComponentModel.DataAnnotations;
using Medical.Domain.Base;
using Medical.Domain.Enum;

namespace Medical.Domain.RecoveryCleaning
{
    /// <summary>
    /// 器械回收记录实体
    /// </summary>
    public class InstrumentRecovery : BaseEntity
    {
        /// <summary>
        /// 物品条码
        /// </summary>
        [Required]
        [MaxLength(50)]
        public string ItemCode { get; set; }

        /// <summary>
        /// 物品名称
        /// </summary>
        [Required]
        [MaxLength(100)]
        public string ItemName { get; set; }

        /// <summary>
        /// 申请单位
        /// </summary>
        [Required]
        [MaxLength(100)]
        public string ApplyDepartment { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        public int Quantity { get; set; }

        /// <summary>
        /// 是否紧急
        /// </summary>
        public bool IsUrgent { get; set; }

        /// <summary>
        /// 回收数量
        /// </summary>
        public int RecoveredQuantity { get; set; }

        /// <summary>
        /// 回收人
        /// </summary>
        [MaxLength(50)]
        public string RecoveredBy { get; set; }

        /// <summary>
        /// 回收时间
        /// </summary>
        public DateTime RecoveryTime { get; set; }

        /// <summary>
        /// 状态
        /// </summary>
        public RecoveryStatusEnum Status { get; set; } = RecoveryStatusEnum.待回收;

        /// <summary>
        /// 机械包Id
        /// </summary>
        public List<int> EquipmentPackageId { get; set; }
    }


} 